The Technical Specification TS 23.203 provides an overview of the entities involved in charging and policy control, in a Third Generation Partnership Project, 3GPP, context. 3GPP offline charging, and Policy Control and Enforcement Function, PCEF, generates charging events based on packet data usage and charging policies as provided by a Policy and Charging Rules Function, PCRF. The charging events are sent to the offline charging system, where they are formatted into Charging Data Records, CDRs, and sent further on to a billing system.
However, online charging for packet data requires continuous contact between an online charging system and a Charging Trigger Function, CTF, while data is being transferred. In this context, the CTF corresponds to a PCEF and exchanges information with an online charging system via a defined interface. Under this arrangement, data transfer is stopped, for example, responsive to the depletion of credit in the user account associated with ongoing packet data consumption.
For more details, see 3GPP TS 32.240 and 3GPP TS 32.296. Broadly, however, online charging in a 3GPP network generally follows the following operating flow: (1) charging events are forwarded to an Online Charging Function, OCF, to obtain authorization for a chargeable event/network resource usage, as requested by a user in the network; (2) the CTF delays the actual resource usage until permission has been granted by the OCS; (3) the CTF tracks the availability of resource usage permission, “quota supervision,” during the network resource usage; (4) the CTF enforces termination of the end user's network resource usage when permission by the OCS is not granted or expires.
With the above overall functionality in mind, an OCS in a 3GPP network provides an “Event Based Charging Function” or EBCF, which performs event based charging and credit control, e.g. content charging for Short Messaging Services or SMS. The OCS further provides a Session Based Charging Function or SBCF, which performs session based charging and credit control, e.g., for voice calls. Still further, the OCS provides a Rating Function that performs unit determination, which is a type of rating. The Rating Function is configured to handle a wide variety of ratable instances, such as rating of volume in terms of granted units or money, rating of time and rating of events, e.g. based on charging of web contents or SMS.
Upon the reception of an online charging request, i.e. a Credit Control Request or CCR, the EBCF/SBCF contacts the Rating Function to request price or tariff information regarding the online charging request. The input to the Rating Function includes: a Rating Request Type indicating a Price Request or a Tariff Request; Service-specific data, such as a Service-ID, Time/Date of Service usage, Quality-of-Service, QoS, requirement, etc.; Subscriber-specific static data, such as Subscriber-ID, Partner-ID, additional tariff information, and possibly other static data; and Subscriber specific dynamic data, such as Account Balances, Subscriber Counters used per time-unit, and possibly other dynamic data.
Correspondingly, the output of the Rating Function includes: a Rating Request Type Response, including Price or Service units or Tariff information; Charge and Recharge Information, such as value for accounts and Subscriber Counters; Tax information, such as the tax value for price or service units for tariff determination; and Detailed information to be used for invoice generation. Based on the response from the Rating Function, the EBCF/SBCF sends an online charging response, i.e. a Credit Control Answer, CCA, to the network node that sent the CCR request. CCR message formats are defined according to IETF RFC 4006.